<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //  创建两个数组
        var num1 = [4, 9, 5, 2, 7, 2]
        var num2 = [9, 4, 9, 8, 4, 2]

        // 判断num1中的items是否在num2中存在
        var res = num1.filter(function(items, index) {
            return num2.indexOf(items) !== -1
        })
        // 利用reduce方法去重,先设置pre为空数组
        // 假如pre数组中没有 cur（相当于res中的数据）
        // 则把该数据增加到pre数组中且返回
        var res1 = res.reduce(function(pre, cur) {
            if (pre.indexOf(cur) === -1) {
                return pre.concat(cur)
            } else {
                return pre
            }
        }, [])
        console.log(res1)
    </script>
</body>

</html>